package com.ruoyi.system.domain.customer;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 优惠卷用户仓库表
 * */
public class CustomerCoupon extends BaseEntity
    {
        private static final long serialVersionUID = 1L;

        /** 优惠卷用户仓库ID */
        private Integer couponId;

        /** 店铺ID */
        @Excel(name = "店铺ID")
        private Integer supplierId;

        /** 商品ID */
        @Excel(name = "商品ID")
        private Integer productId;

        /** 用户ID */
        @Excel(name = "用户ID")
        private Integer customerId;

        /** 优惠卷ID */
        @Excel(name = "优惠卷ID")
        private Integer preferentialId;

        /** 优惠卷名称 */
        @Excel(name = "优惠卷名称")
        private String couponName;

        /** 优惠卷过期时间 */
        @JsonFormat(pattern = "yyyy-MM-dd")
        @Excel(name = "优惠卷过期时间", width = 30, dateFormat = "yyyy-MM-dd")
        private Date couponTime;

        /** 优惠卷价格 */
        @Excel(name = "优惠卷价格")
        private Long couponPrice;

        /** 满减使用 */
        @Excel(name = "满减使用")
        private Long couponPriceMost;

        /** 0 有 1 没有 */
        @Excel(name = "0 有 1 没有")
        private String couponState;

        /** 备用 */
        @Excel(name = "备用")
        private String preferentialRemark;

        /** 最后修改时间 */
        @JsonFormat(pattern = "yyyy-MM-dd")
        @Excel(name = "最后修改时间", width = 30, dateFormat = "yyyy-MM-dd")
        private Date modifiedTime;

        private String shopsName;

        public void setCouponId(Integer couponId)
        {
            this.couponId = couponId;
        }

        public Integer getCouponId()
        {
            return couponId;
        }
        public void setSupplierId(Integer supplierId)
        {
            this.supplierId = supplierId;
        }

        public Integer getSupplierId()
        {
            return supplierId;
        }
        public void setProductId(Integer productId)
        {
            this.productId = productId;
        }

        public Integer getProductId()
        {
            return productId;
        }
        public void setCustomerId(Integer customerId)
        {
            this.customerId = customerId;
        }

        public Integer getCustomerId()
        {
            return customerId;
        }
        public void setPreferentialId(Integer preferentialId)
        {
            this.preferentialId = preferentialId;
        }

        public Integer getPreferentialId()
        {
            return preferentialId;
        }
        public void setCouponName(String couponName)
        {
            this.couponName = couponName;
        }

        public String getCouponName()
        {
            return couponName;
        }
        public void setCouponTime(Date couponTime)
        {
            this.couponTime = couponTime;
        }

        public Date getCouponTime()
        {
            return couponTime;
        }
        public void setCouponPrice(Long couponPrice)
        {
            this.couponPrice = couponPrice;
        }

        public Long getCouponPrice()
        {
            return couponPrice;
        }
        public void setCouponPriceMost(Long couponPriceMost)
        {
            this.couponPriceMost = couponPriceMost;
        }

        public Long getCouponPriceMost()
        {
            return couponPriceMost;
        }
        public void setCouponState(String couponState)
        {
            this.couponState = couponState;
        }

        public String getCouponState()
        {
            return couponState;
        }
        public void setPreferentialRemark(String preferentialRemark)
        {
            this.preferentialRemark = preferentialRemark;
        }

        public String getPreferentialRemark()
        {
            return preferentialRemark;
        }
        public void setModifiedTime(Date modifiedTime)
        {
            this.modifiedTime = modifiedTime;
        }

        public Date getModifiedTime()
        {
            return modifiedTime;
        }

        public String getShopsName() {
            return shopsName;
        }

        public void setShopsName(String shopsName) {
            this.shopsName = shopsName;
        }

        @Override
        public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("couponId", getCouponId())
                .append("supplierId", getSupplierId())
                .append("productId", getProductId())
                .append("customerId", getCustomerId())
                .append("preferentialId", getPreferentialId())
                .append("couponName", getCouponName())
                .append("couponTime", getCouponTime())
                .append("couponPrice", getCouponPrice())
                .append("couponPriceMost", getCouponPriceMost())
                .append("couponState", getCouponState())
                .append("preferentialRemark", getPreferentialRemark())
                .append("modifiedTime", getModifiedTime())
                .toString();
    }
}
